home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 October / EnigmA AMIGA RUN 22 (1997)(G.R. Edizioni)(IT)[!][issue 1997-10 & 11][EAR-CD VI].iso / progs / graphics / cybergl-install / examples / include / cybergl.h < prev   
C/C++ Source or Header  |  1997-03-20  |  26KB  |  490 lines

  1. /*
  2. **    $VER: cybergl.h 1.0 (20.03.97)
  3. **    
  4. **    Copyright © 1996-1997 by phase5 digital products
  5. **      All Rights reserved.
  6. **
  7. */
  8.  
  9. #ifndef _CYBERGL_H
  10. #define _CYBERGL_H
  11.  
  12.  
  13.  
  14. /*----------------------Defines------------------------------*/
  15.  
  16. #define GL_ACCUM_BUFFER_BIT    (1 <<  0) /* accumulation buffer mask */
  17. #define GL_COLOR_BUFFER_BIT    (1 <<  1) /* color buffer mask */
  18. #define GL_CURRENT_BIT         (1 <<  2) /* current values mask */
  19. #define GL_DEPTH_BUFFER_BIT    (1 <<  3) /* depth buffer mask */
  20. #define GL_ENABLE_BIT          (1 <<  4) /* enable mask */
  21. #define GL_EVAL_BIT            (1 <<  5) /* evaluator mask */
  22. #define GL_FOG_BIT             (1 <<  6) /* fog mask */
  23. #define GL_HINT_BIT            (1 <<  7) /* hint mask */
  24. #define GL_LIGHTING_BIT        (1 <<  8) /* lighting mask */
  25. #define GL_LINE_BIT            (1 <<  9) /* line mask */
  26. #define GL_LIST_BIT            (1 << 10) /* display list mask */
  27. #define GL_PIXEL_MODE_BIT      (1 << 11) /* pixel mode mask */
  28. #define GL_POINT_BIT           (1 << 12) /* point mask */
  29. #define GL_POLYGON_BIT         (1 << 13) /* polygon mask */
  30. #define GL_POLYGON_STIPPLE_BIT (1 << 14) /* polygon stipple mask */
  31. #define GL_SCISSOR_BIT         (1 << 15) /* scissor mask */
  32. #define GL_STENCIL_BUFFER_BIT  (1 << 16) /* stencil buffer mask */
  33. #define GL_TEXTURE_BIT         (1 << 17) /* texture mask */
  34. #define GL_TRANSFORM_BIT       (1 << 18) /* transformation mask */
  35. #define GL_VIEWPORT_BIT        (1 << 19) /* viewport mask */
  36. #define GL_ALL_ATTRIB_BIT       (GL_ACCUM_BUFFER_BIT    || GL_COLOR_BUFFER_BIT || \
  37.                                  GL_CURRENT_BIT         || GL_DEPTH_BUFFER_BIT || \
  38.                                  GL_ENABLE_BIT          || GL_EVAL_BIT         || \
  39.                                  GL_FOG_BIT             || GL_HINT_BIT         || \
  40.                                  GL_LIGHTING_BIT        || GL_LINE_BIT         || \
  41.                                  GL_LIST_BIT            || GL_PIXEL_MODE_BIT   || \
  42.                                  GL_POINT_BIT           || GL_POLYGON_BIT      || \
  43.                                  GL_POLYGON_STIPPLE_BIT || GL_SCISSOR_BIT      || \
  44.                                  GL_STENCIL_BUFFER_BIT  || GL_TEXTURE_BIT      || \
  45.                                  GL_TRANSFORM_BIT       || GL_VIEWPORT_BIT
  46.                                          /* all attrib bits at once */
  47.  
  48. /*----------------------Types--------------------------------*/
  49.  
  50. typedef void           GLvoid;
  51. typedef unsigned long  GLbitfield;
  52. typedef signed char    GLbyte;
  53. typedef short          GLshort;
  54. typedef long           GLint;
  55. typedef unsigned long  GLsizei;
  56. typedef unsigned char  GLubyte;
  57. typedef unsigned short GLushort;
  58. typedef unsigned long  GLuint;
  59. typedef float          GLfloat;
  60. typedef float          GLclampf;
  61. typedef double         GLdouble;
  62. typedef double         GLclampd;
  63.  
  64. typedef enum {
  65.   GL_FALSE,
  66.   GL_TRUE
  67. }                      GLboolean;
  68.  
  69. typedef enum {                      /* enumerated constants */
  70.   GL_NO_ERROR,                      /* no error occured */
  71.   GL_INVALID_ENUM,                  /* invalid enum specified */
  72.   GL_INVALID_VALUE,                 /* invalid value specified */
  73.   GL_INVALID_OPERATION,             /* invalid operation executed */
  74.   GL_STACK_OVERFLOW,                /* stack overflow error */
  75.   GL_STACK_UNDERFLOW,               /* stack underflow error */
  76.   GL_OUT_OF_MEMORY,                 /* out of memory */
  77.   GL_NOT_IMPLEMENTED,               /* not implemented in simpleGL */
  78.   GL_NO_PRIMITIVE,                  /* currently not in begin/end mode */
  79.   GL_POINTS,                        /* assembling points */
  80.   GL_LINE_STRIP,                    /* assembling a line strip */
  81.   GL_LINE_LOOP,                     /* assembling a line loop */
  82.   GL_LINES,                         /* assembling lines */
  83.   GL_POLYGON,                       /* assembling a polygon */
  84.   GL_TRIANGLE_STRIP,                /* assembling a triangle strip */
  85.   GL_TRIANGLE_FAN,                  /* assembling a triangle fan */
  86.   GL_TRIANGLES,                     /* assembling triangles */
  87.   GL_QUAD_STRIP,                    /* assembling a quad strip */
  88.   GL_QUADS,                         /* assembling quads */
  89.   GL_CLIP_PLANE0,                   /* clip plane 0 */
  90.   GL_CLIP_PLANE1,                   /* clip plane 1 */
  91.   GL_CLIP_PLANE2,                   /* clip plane 2 */
  92.   GL_CLIP_PLANE3,                   /* clip plane 3 */
  93.   GL_CLIP_PLANE4,                   /* clip plane 4 */
  94.   GL_CLIP_PLANE5,                   /* clip plane 5 */
  95.   GL_LESS,                          /* pass depth test if new z is less */
  96.   GL_ALWAYS,                        /* always pass depth test */
  97.   GL_GEQUAL,                        /* pass depth test if new z is greater or equal */
  98.   GL_GREATER,                       /* pass depth test if new z is greater */
  99.   GL_LEQUAL,                        /* pass depth test if new z is less or equal */
  100.   GL_EQUAL,                         /* pass depth test if new z is equal */
  101.   GL_NOTEQUAL,                      /* pass depth test if new z is different */
  102.   GL_NEVER,                         /* never pass depth test */
  103.   GL_NONE,                          /* draw to no buffer */
  104.   GL_FRONT_LEFT,                    /* draw to front left buffer */
  105.   GL_FRONT_RIGHT,                   /* draw to front right buffer */
  106.   GL_BACK_LEFT,                     /* draw to back left buffer */
  107.   GL_BACK_RIGHT,                    /* draw to back right buffer */
  108.   GL_LEFT,                          /* draw to front and back left buffers */
  109.   GL_RIGHT,                         /* draw to front and back right buffers */
  110.   GL_FRONT,                         /* draw to left and right front buffers */
  111.   GL_BACK,                          /* draw to left and right back buffers */
  112.   GL_FRONT_AND_BACK,                /* draw to all buffers */
  113.   GL_AUX0,                          /* draw to auxiliary buffer 0 */
  114.   GL_COLOR_MATERIAL,                /* enable current color tracking */
  115.   GL_CULL_FACE,                     /* enable back face culling */
  116.   GL_DEPTH_TEST,                    /* enable depth test */
  117.   GL_FOG,                           /* enable fog calculation */
  118.   GL_LIGHTING,                      /* enable lighting */
  119.   GL_NORMALIZE,                     /* enable auto normalization */
  120.   GL_DITHER,                        /* enable dithering */
  121.   GL_FOG_MODE,                      /* specify fog mode */
  122.   GL_FOG_DENSITY,                   /* specify fog density */
  123.   GL_FOG_START,                     /* distance where no fog occurs */
  124.   GL_FOG_END,                       /* distance where full fog occurs */
  125.   GL_FOG_COLOR,                     /* color of fog */
  126.   GL_FOG_INDEX,                     /* not implemented */
  127.   GL_CW,                            /* clock wise */
  128.   GL_CCW,                           /* counter clock wise */
  129.   GL_AUX_BUFFERS,                   /* get number of auxiliary buffers */
  130.   GL_DEPTH_BITS,                    /* get number of depth buffer bits */
  131.   GL_RED_BITS,                      /* get number of red component bits */
  132.   GL_GREEN_BITS,                    /* get number of green component bits */
  133.   GL_BLUE_BITS,                     /* get number of blue component bits */
  134.   GL_ALPHA_BITS,                    /* get number of alpha component bits */
  135.   GL_COLOR_CLEAR_VALUE,             /* get current clear color */
  136.   GL_COLOR_MATERIAL_FACE,           /* get current color tracking face(s) */
  137.   GL_COLOR_MATERIAL_PARAMETER,      /* get current color tracking material property */
  138.   GL_CULL_FACE_MODE,                /* get current cull face mode */
  139.   GL_CURRENT_COLOR,                 /* get current color */
  140.   GL_CURRENT_NORMAL,                /* get current normal */
  141.   GL_DEPTH_CLEAR_VALUE,             /* get current depth clear value */
  142.   GL_DEPTH_FUNC,                    /* get current depth test function */
  143.   GL_DEPTH_RANGE,                   /* get current depth range */
  144.   GL_DOUBLEBUFFER,                  /* ask wheter doublebuffering is possible */
  145.   GL_DRAW_BUFFER,                   /* get current draw buffer(s) */
  146.   GL_EDGE_FLAG,                     /* get current edge flag */
  147.   GL_FRONT_FACE,                    /* get current front face orientation */
  148.   GL_MATRIX_MODE,                   /* get current matrix mode */
  149.   GL_MAX_CLIP_PLANES,               /* get maximum number of clipping planes */
  150.   GL_MAX_LIGHTS,                    /* get maximum number of lights */
  151.   GL_MAX_MODELVIEW_STACK_DEPTH,     /* get maximum modelview matrix stack depth */
  152.   GL_MAX_NAME_STACK_DEPTH,          /* get maximum name stack depth */
  153.   GL_MAX_PROJECTION_STACK_DEPTH,    /* get maximum projection matrix stack depth */
  154.   GL_MAX_VIEWPORT_DIMS,             /* get maximum viewport dimensions */
  155.   GL_MODELVIEW_MATRIX,              /* get current modelview matrix */
  156.   GL_MODELVIEW_STACK_DEPTH,         /* get current modelview matrix stack depth */
  157.   GL_NAME_STACK_DEPTH,              /* get current name stack depth */
  158.   GL_POLYGON_MODE,                  /* get current polygon rasterisation mode */
  159.   GL_PROJECTION_MATRIX,             /* get current projection matrix */
  160.   GL_PROJECTION_STACK_DEPTH,        /* get current projection matrix stack depth */
  161.   GL_RENDER_MODE,                   /* get current render mode */
  162.   GL_SHADE_MODEL,                   /* get current shade model */
  163.   GL_STEREO,                        /* ask whether stereo drawing is possible  */
  164.   GL_VIEWPORT,                      /* get current viewport dimensions */
  165.   GL_VENDOR,                        /* get the implementation company's name */
  166.   GL_RENDERER,                      /* get platform specific string */
  167.   GL_VERSION,                       /* get release version */
  168.   GL_EXTENSIONS,                    /* get list of extensions */
  169.   GL_FOG_HINT,                      /* get current fog hint */
  170.   GL_PERSPECTIVE_CORRECTION_HINT,   /* get current perspective correction hint */
  171.   GL_FASTEST,                       /* hint value 'fastest' */
  172.   GL_NICEST,                        /* hint value 'nicest' */
  173.   GL_DONT_CARE,                     /* do not care about hint */
  174.   GL_LIGHT0,                        /* light 0 */
  175.   GL_LIGHT1,                        /* light 1 */
  176.   GL_LIGHT2,                        /* light 2 */
  177.   GL_LIGHT3,                        /* light 3 */
  178.   GL_LIGHT4,                        /* light 4 */
  179.   GL_LIGHT5,                        /* light 5 */
  180.   GL_LIGHT6,                        /* light 6 */
  181.   GL_LIGHT7,                        /* light 7 */
  182.   GL_AMBIENT,                       /* ambient color */
  183.   GL_DIFFUSE,                       /* diffuse color */
  184.   GL_SPECULAR,                      /* specular color */
  185.   GL_POSITION,                      /* light position */
  186.   GL_SPOT_EXPONENT,                 /* spot exponent */
  187.   GL_SPOT_CUTOFF,                   /* spot light cutoff angle */
  188.   GL_SPOT_DIRECTION,                /* spot light direction */
  189.   GL_CONSTANT_ATTENUATION,          /* constant attenuation factor */
  190.   GL_LINEAR_ATTENUATION,            /* linear attenuation factor */
  191.   GL_QUADRATIC_ATTENUATION,         /* quadratic attenuation factor */
  192.   GL_LIGHT_MODEL_LOCAL_VIEWER,      /* viewer at infinity or at [0,0,0,1] */
  193.   GL_LIGHT_MODEL_TWO_SIDE,          /* handle front and back materials different */
  194.   GL_LIGHT_MODEL_AMBIENT,           /* ambient color of scene */
  195.   GL_EMISSION,                      /* emissive color */
  196.   GL_SHININESS,                     /* specular reflection shininess */
  197.   GL_AMBIENT_AND_DIFFUSE,           /* ambient and diffuse color */
  198.   GL_MODELVIEW,                     /* modelview matrix mode */
  199.   GL_PROJECTION,                    /* perspective matrix mode */
  200.   GL_POINT,                         /* polygon rasterisation mode 'point' */
  201.   GL_LINE,                          /* polygon rasterisation mode 'line' */
  202.   GL_FILL,                          /* polygon rasterisation mode 'fill' */
  203.   GL_RENDER,                        /* render primitives */
  204.   GL_SELECT,                        /* determine selected primitives */
  205.   GL_FEEDBACK,                      /* determine data, that would have been rendered */
  206.   GL_FLAT,                          /* flat shading */
  207.   GL_SMOOTH,                        /* gouraud shading */
  208.   GL_S,                             /* TexGen s coordinate */
  209.   GL_T,                             /* TexGen t coordinate */
  210.   GL_R,                             /* TexGen r coordinate */
  211.   GL_Q,                             /* TexGen q coordinate */
  212.   GL_PACK_SWAP_BYTES,               /* swap bytes while packing image data */
  213.   GL_PACK_LSB_FIRST,                /* swap bits while packing image data */
  214.   GL_PACK_ROW_LENGTH,               /* image row length for packing */
  215.   GL_PACK_SKIP_PIXELS,              /* image left offset for packing */
  216.   GL_PACK_SKIP_ROWS,                /* image bottom offset for packing */
  217.   GL_PACK_ALIGNMENT,                /* image packing row alignment */
  218.   GL_UNPACK_SWAP_BYTES,             /* swap bytes while unpacking image data */
  219.   GL_UNPACK_LSB_FIRST,              /* swap bits while unpacking image data */
  220.   GL_UNPACK_ROW_LENGTH,             /* image row length for unpacking */
  221.   GL_UNPACK_SKIP_PIXELS,            /* image left offset for unpacking */
  222.   GL_UNPACK_SKIP_ROWS,              /* image bottom offset for unpacking */
  223.   GL_UNPACK_ALIGNMENT,              /* image unpacking row alignment */
  224.   GL_MAP_COLOR,                     /* color mapping via lookup tables */
  225.   GL_MAP_STENCIL,                   /* stencil mapping vias lookup table */
  226.   GL_INDEX_SHIFT,                   /* index shift for images */
  227.   GL_INDEX_OFFSET,                  /* index offset for images */
  228.   GL_RED_SCALE,                     /* red scale for images */
  229.   GL_RED_BIAS,                      /* red bias for images */
  230.   GL_GREEN_SCALE,                   /* green scale for images */
  231.   GL_GREEN_BIAS,                    /* green bias for images */
  232.   GL_BLUE_SCALE,                    /* blue scale for images */
  233.   GL_BLUE_BIAS,                     /* blue bias for images */
  234.   GL_ALPHA_SCALE,                   /* alpha scale for images */
  235.   GL_ALPHA_BIAS,                    /* alpha bias for images */
  236.   GL_DEPTH_SCALE,                   /* depth scale for images */
  237.   GL_DEPTH_BIAS,                    /* depth bias for images */
  238.   GL_ALPHA_TEST,                    /* not implemented */
  239.   GL_AUTO_NORMAL,                   /* not implemented */
  240.   GL_MODULATE,                      /* texture environment mode modulate */
  241.   GL_DECAL,                         /* texture environment mode decal */
  242.   GL_BLEND,                         /* texture environment mode blend */
  243.   GL_LINE_SMOOTH,                   /* not implemented */
  244.   GL_LINE_STIPPLE,                  /* not implemented */
  245.   GL_LOGIC_OP,                      /* not implemented */
  246.   GL_MAP1_COLOR4,                   /* not implemented */
  247.   GL_MAP1_INDEX,                    /* not implemented */
  248.   GL_MAP1_NORMAL,                   /* not implemented */
  249.   GL_MAP1_TEXTURE_COORD_1,          /* not implemented */
  250.   GL_MAP1_TEXTURE_COORD_2,          /* not implemented */
  251.   GL_MAP1_TEXTURE_COORD_3,          /* not implemented */
  252.   GL_MAP1_TEXTURE_COORD_4,          /* not implemented */
  253.   GL_MAP1_VERTEX_3,                 /* not implemented */
  254.   GL_MAP1_VERTEX_4,                 /* not implemented */
  255.   GL_MAP2_COLOR4,                   /* not implemented */
  256.   GL_MAP2_INDEX,                    /* not implemented */
  257.   GL_MAP2_NORMAL,                   /* not implemented */
  258.   GL_MAP2_TEXTURE_COORD_1,          /* not implemented */
  259.   GL_MAP2_TEXTURE_COORD_2,          /* not implemented */
  260.   GL_MAP2_TEXTURE_COORD_3,          /* not implemented */
  261.   GL_MAP2_TEXTURE_COORD_4,          /* not implemented */
  262.   GL_MAP2_VERTEX_3,                 /* not implemented */
  263.   GL_MAP2_VERTEX_4,                 /* not implemented */
  264.   GL_POINT_SMOOTH,                  /* not implemented */
  265.   GL_POLYGON_SMOOTH,                /* not implemented */
  266.   GL_POLYGON_STIPPLE,               /* not implemented */
  267.   GL_SCISSOR_TEST,                  /* not implemented */
  268.   GL_STENCIL_TEST,                  /* not implemented */
  269.   GL_TEXTURE_1D,                    /* 1D texture mapping */
  270.   GL_TEXTURE_2D,                    /* 2D texture mapping */
  271.   GL_TEXTURE_GEN_Q,                 /* q-texture-coordinate generation */
  272.   GL_TEXTURE_GEN_R,                 /* r-texture-coordinate generation */
  273.   GL_TEXTURE_GEN_S,                 /* s-texture-coordinate generation */
  274.   GL_TEXTURE_GEN_T,                 /* t-texture-coordinate generation */
  275.   GL_ACCUM_ALPHA_BITS,              /* not implemented */
  276.   GL_ACCUM_BLUE_BITS,               /* not implemented */
  277.   GL_ACCUM_CLEAR_VALUE,             /* not implemented */
  278.   GL_ACCUM_GREEN_BITS,              /* not implemented */
  279.   GL_ACCUM_RED_BITS,                /* not implemented */
  280.   GL_ALPHA_TEST_FUNC,               /* not implemented */
  281.   GL_ALPHA_TEST_REF,                /* not implemented */
  282.   GL_ATTRIB_STACK_DEPTH,            /* attribute stack depth */
  283.   GL_BLEND_DST,                     /* not implemented */
  284.   GL_BLEND_SRC,                     /* not implemented */
  285.   GL_COLOR_WRITEMASK,               /* not implemented */
  286.   GL_CURRENT_INDEX,                 /* not implemented */
  287.   GL_CURRENT_RASTER_COLOR,          /* not implemented */
  288.   GL_CURRENT_RASTER_INDEX,          /* not implemented */
  289.   GL_CURRENT_RASTER_POSITION,       /* not implemented */
  290.   GL_CURRENT_RASTER_TEXTURE_COORDS, /* not implemented */
  291.   GL_CURRENT_RASTER_POSITION_VALID, /* not implemented */
  292.   GL_CURRENT_TEXTURE_COORDS,        /* not implemented */
  293.   GL_DEPTH_WRITEMASK,               /* not implemented */
  294.   GL_INDEX_BITS,                    /* number of color index bits */
  295.   GL_INDEX_CLEAR_VALUE,             /* not implemented */
  296.   GL_INDEX_MODE,                    /* not implemented */
  297.   GL_INDEX_WRITEMASK,               /* not implemented */
  298.   GL_LINE_SMOOTH_HINT,              /* not implemented */
  299.   GL_LINE_STIPPLE_PATTERN,          /* not implemented */
  300.   GL_LINE_STIPPLE_REPEAT,           /* not implemented */
  301.   GL_LINE_WIDTH,                    /* not implemented */
  302.   GL_LINE_WIDTH_GRANULARITY,        /* not implemented */
  303.   GL_LINE_WIDTH_RANGE,              /* not implemented */
  304.   GL_LIST_BASE,                     /* not implemented */
  305.   GL_LIST_INDEX,                    /* not implemented */
  306.   GL_LIST_MODE,                     /* not implemented */
  307.   GL_LOGIC_OP_MODE,                 /* not implemented */
  308.   GL_MAP1_COLOR_4,                  /* not implemented */
  309.   GL_MAP1_GRID_DOMAIN,              /* not implemented */
  310.   GL_MAP1_GRID_SEGMENTS,            /* not implemented */
  311.   GL_MAP2_COLOR_4,                  /* not implemented */
  312.   GL_MAP2_GRID_DOMAIN,              /* not implemented */
  313.   GL_MAP2_GRID_SEGMENTS,            /* not implemented */
  314.   GL_MAX_ATTRIB_STACK_DEPTH,        /* not implemented */
  315.   GL_MAX_EVAL_ORDER,                /* not implemented */
  316.   GL_MAX_LIST_NESTING,              /* not implemented */
  317.   GL_MAX_PIXEL_MAP_TABLE,           /* maximum mapping table size */
  318.   GL_MAX_TEXTURE_SIZE,              /* maximum texture size */
  319.   GL_MAX_TEXTURE_STACK_DEPTH,       /* maximum texture stack depth */
  320.   GL_PIXEL_MAP_A_TO_A_SIZE,         /* alpha to alpha mapping table size */
  321.   GL_PIXEL_MAP_B_TO_B_SIZE,         /* blue to blue mapping table size */
  322.   GL_PIXEL_MAP_G_TO_G_SIZE,         /* green to green mapping table size */
  323.   GL_PIXEL_MAP_I_TO_A_SIZE,         /* index to alpha mapping table size */
  324.   GL_PIXEL_MAP_I_TO_B_SIZE,         /* index to blue mapping table size */
  325.   GL_PIXEL_MAP_I_TO_G_SIZE,         /* index to green mapping table size */
  326.   GL_PIXEL_MAP_I_TO_I_SIZE,         /* index to index mapping table size */
  327.   GL_PIXEL_MAP_I_TO_R_SIZE,         /* index to red mapping table size */
  328.   GL_PIXEL_MAP_R_TO_R_SIZE,         /* red to red mapping table size */
  329.   GL_PIXEL_MAP_S_TO_S_SIZE,         /* stencil to stencil mapping table size */
  330.   GL_PIXEL_MAP_A_TO_A,              /* alpha to alpha mapping table */
  331.   GL_PIXEL_MAP_B_TO_B,              /* blue to blue mapping table */
  332.   GL_PIXEL_MAP_G_TO_G,              /* green to green mapping table */
  333.   GL_PIXEL_MAP_I_TO_A,              /* index to alpha mapping table */
  334.   GL_PIXEL_MAP_I_TO_B,              /* index to blue mapping table */
  335.   GL_PIXEL_MAP_I_TO_G,              /* index to green mapping table */
  336.   GL_PIXEL_MAP_I_TO_I,              /* index to index mapping table */
  337.   GL_PIXEL_MAP_I_TO_R,              /* index to red mapping table */
  338.   GL_PIXEL_MAP_R_TO_R,              /* red to red mapping table */
  339.   GL_PIXEL_MAP_S_TO_S,              /* stencil to stencil mapping table */
  340.   GL_POINT_SIZE,                    /* not implemented */
  341.   GL_POINT_SIZE_GRANULARITY,        /* not implemented */
  342.   GL_POINT_SIZE_RANGE,              /* not implemented */
  343.   GL_POINT_SMOOTH_HINT,             /* not implemented */
  344.   GL_POLYGON_SMOOTH_HINT,           /* not implemented */
  345.   GL_READ_BUFFER,                   /* not implemented */
  346.   GL_RGBA_MODE,                     /* RGBA mode */
  347.   GL_SCISSOR_BOX,                   /* not implemented */
  348.   GL_STENCIL_BITS,                  /* not implemented */
  349.   GL_STENCIL_CLEAR_VALUE,           /* not implemented */
  350.   GL_STENCIL_FAIL,                  /* not implemented */
  351.   GL_STENCIL_FUNC,                  /* not implemented */
  352.   GL_STENCIL_PASS_DEPTH_FAIL,       /* not implemented */
  353.   GL_STENCIL_PASS_DEPTH_PASS,       /* not implemented */
  354.   GL_STENCIL_REF,                   /* not implemented */
  355.   GL_STENCIL_VALUE_MASK,            /* not implemented */
  356.   GL_STENCIL_WRITEMASK,             /* not implemented */
  357.   GL_SUBPIXEL_BITS,                 /* not implemented */
  358.   GL_TEXTURE_ENV,                   /* texture environment */
  359.   GL_TEXTURE_ENV_COLOR,             /* texture environment color */
  360.   GL_TEXTURE_ENV_MODE,              /* texture environment mode */
  361.   GL_TEXTURE_MATRIX,                /* texture matrix */
  362.   GL_TEXTURE_STACK_DEPTH,           /* texture matrix stack depth */
  363.   GL_ZOOM_X,                        /* pixel zoom x-value for images */
  364.   GL_ZOOM_Y,                        /* pixel zoom y-value for images */
  365.   GL_COLOR_INDEXES,                 /* not implemented */
  366.   GL_TEXTURE,                       /* not implemented */
  367.   GL_UNSIGNED_BYTE,                 /* unsigned byte type */
  368.   GL_BYTE,                          /* byte type */
  369.   GL_BITMAP,                        /* single bits in unsigned byte type */
  370.   GL_UNSIGNED_SHORT,                /* unsigned short type */
  371.   GL_SHORT,                         /* short type */
  372.   GL_UNSIGNED_INT,                  /* unsigned int type */
  373.   GL_INT,                           /* int type */
  374.   GL_FLOAT,                         /* float type */
  375.   GL_COLOR_INDEX,                   /* color index image */
  376.   GL_STENCIL_INDEX,                 /* stencil index image */
  377.   GL_DEPTH_COMPONENT,               /* depth component image */
  378.   GL_RED,                           /* red image */
  379.   GL_GREEN,                         /* green image */
  380.   GL_BLUE,                          /* blue image */
  381.   GL_ALPHA,                         /* alpha image */
  382.   GL_RGB,                           /* rgb image */
  383.   GL_RGBA,                          /* rgba image */
  384.   GL_LUMINANCE,                     /* luminance image */
  385.   GL_LUMINANCE_ALPHA,               /* luminance alpha image */
  386.   GL_LINEAR,                        /* fog mode linear */
  387.   GL_EXP,                           /* fog mode exp    */
  388.   GL_EXP2,                          /* fog mode exp2   */
  389.   GL_EYE_LINEAR,                    /* eye linear texture generation mode */
  390.   GL_OBJECT_LINEAR,                 /* object linear texture generation mode */
  391.   GL_SPHERE_MAP,                    /* sphere map texture generation mode */
  392.   GL_TEXTURE_GEN_MODE,              /* texture generation mode */
  393.   GL_OBJECT_PLANE,                  /* object plane equation for texture generation */
  394.   GL_EYE_PLANE,                     /* eye plane equation for texture generation */
  395.   GL_TEXTURE_WRAP_S,                /* texture wrapping mode for s-coordinate */
  396.   GL_TEXTURE_WRAP_T,                /* texture wrapping mode for t-coordinate */
  397.   GL_TEXTURE_MIN_FILTER,            /* texture minification filter type */
  398.   GL_TEXTURE_MAG_FILTER,            /* texture magnification filter type */
  399.   GL_TEXTURE_BORDER_COLOR,          /* texture border color */
  400.   GL_CLAMP,                         /* texture wrapping mode clamp */
  401.   GL_REPEAT,                        /* texture wrapping mode repeat */
  402.   GL_NEAREST,                       /* texture filter type nearest texel */
  403.   GL_NEAREST_MIPMAP_NEAREST,        /* texture filter type nearest mipmap nearest texel */
  404.   GL_NEAREST_MIPMAP_LINEAR,         /* texture filter type nearest mipmap linear texel */
  405.   GL_LINEAR_MIPMAP_NEAREST,         /* texture filter type linear mipmap nearest texel */
  406.   GL_LINEAR_MIPMAP_LINEAR,          /* texture filter type linear mipmap linear texel */
  407.   GL_TEXTURE_WIDTH,                 /* texture image width */
  408.   GL_TEXTURE_HEIGHT,                /* texture image height */
  409.   GL_TEXTURE_COMPONENTS,            /* texture image component number */
  410.   GL_TEXTURE_BORDER                 /* texture image border */
  411. }                      GLenum;
  412.  
  413.  
  414. #ifdef SHARED
  415.  
  416. #ifndef GL_APICOMPATIBLE
  417.  
  418. typedef struct
  419. {
  420.     GLdouble    eyex;
  421.     GLdouble    eyey;
  422.     GLdouble    eyez;
  423.     GLdouble    centerx;
  424.     GLdouble    centery;
  425.     GLdouble    centerz;
  426.     GLdouble    upx;
  427.     GLdouble    upy;
  428.     GLdouble    upz;
  429. } GLlookAt;
  430.  
  431. typedef struct
  432. {
  433.     GLdouble    objx;
  434.     GLdouble    objy;
  435.     GLdouble    objz;
  436.     GLdouble    *winx;        /* x coordinate of resulting point */
  437.     GLdouble    *winy;        /* y coordinate of resulting point */
  438.     GLdouble    *winz;        /* z coordinate of resulting point */
  439. } GLproject;
  440.  
  441. typedef struct
  442. {
  443.     GLdouble    winx;
  444.     GLdouble    winy;
  445.     GLdouble    winz;
  446.     GLdouble    *objx;        /* x coordinate of resulting point */
  447.     GLdouble    *objy;        /* y coordinate of resulting point */
  448.     GLdouble    *objz;        /* z coordinate of resulting point */
  449. } GLunProject;
  450.  
  451. typedef struct
  452. {
  453.     GLdouble    left;
  454.     GLdouble    right;
  455.     GLdouble    bottom;
  456.     GLdouble    top;
  457.     GLdouble    zNear;
  458.     GLdouble    zFar;
  459.  
  460. } GLfrustum;
  461.  
  462.  
  463. typedef struct
  464. {
  465.     GLdouble    left;
  466.     GLdouble    right;
  467.     GLdouble    bottom;
  468.     GLdouble    top;
  469.     GLdouble    zNear;
  470.     GLdouble    zFar;
  471.  
  472. } GLortho;
  473.  
  474. typedef struct
  475. {
  476.     GLsizei        width;
  477.     GLsizei        height;
  478.     GLfloat        xorig;
  479.     GLfloat        yorig;
  480.     GLfloat        xmove;
  481.     GLfloat        ymove;
  482.     GLubyte       *bitmap;
  483. } GLbitmap;
  484.  
  485. #endif
  486.  
  487. #endif
  488.  
  489. #endif
  490.